verse_and_dimensionsfandomcom-20200214-history
User blog:Cheetahrock63/Hypercomplex Blog: Visualizing complex functions
Home Visualizing a function f from the set of real numbers to the set of real numbers is fairly easy, just consider the set of all ordered pairs of real numbers (x,y) such that y=f(x) and draw that on the real plane. But when it comes to functions of a complex variable, things get a little bit tricky. For one thing, every complex number is an ordered pair of real numbers itself. An ordered pair of complex numbers (x+yi,z+wi) consists of four real numbers and something tells me that it might be a little difficult to represent yourself a four-dimensional real space in our Universe. Luckily, we can use a few tricks to circumvent this and create some very nice looking products while doing so. Some things we want to see So before we get into the ways to visualize the functions, we'd want to talk about properties of the function that we want to be able to see from looking at the visualizations. Analyticity A complex function being called "analytic" is really just a fancy way of saying "it's super-smooth, but a special kind of super smooth". Fully understanding the notion of analyticity requires a little bit of calculus and intuitively understanding may be greatly helped by the visualizations that I'm supposed to get into at some point (specifically the complex maps and contour plots). Until then, it should be somewhat safe to dump formal definitions to get back into later. Feel free to skip some sections under this header for the visualizations to talk for themselves, since it can potentially be astronomically better to do that. More formal definition A complex function f is analytic on an open subset U of {\mathbb {C}} iff it is infinitely differentiable everywhere in its domain and for any z_0 \in U , the Taylor series of f centered at z_0 converges in z_0 's neighbourhood. So for any natural n , n th derivative of f exists (the function is "smooth") and you can evaluate f(z_1) for some z_1 arbitrarily close to z_0 using the Taylor series of f . If an analytic function f can be represented as a power series (such as a Taylor series) that converges for all complex numbers, then f is called entire. This means that for some entire function f we can evaluate any f(z): z \in {\mathbb {C}} using the power series of f (Note: this does not mean that the power series is the most efficient way of computation). A complex function f is called holomorphic on an open subset U of {\mathbb {C}} iff for any z_0 \in U , it is differentiable at z_0 (if the limit \displaystyle \lim_{h \to 0} \frac{f(z_0 +h) - f(z_0)}{h} exists). As it turns out, any complex function that is analytic is also holomorphic and vice versa. This is why some people use the two terms interchangeably. An entire function is holomorphic on the whole complex plane and a function that is holomorphic on an open subset U of {\mathbb {C}} except for some isolated points is called meromorphic on U . Any function meromorphic on U can be represented as the ratio between two functions holomorphic everywhere on U . Examples of entire functions: *any polynomial * \exp (z) * \sin (z) * \cos (z) * \sinh (z) * \cosh (z) * {\rm {sinc}} (z) * {\rm {erf}} (z) Examples of functions meromorphic on {\mathbb {C}} : * z^{-1} *any z^{-n} where n is a positive integer * \tan (z) * \csc (z) , \sec (z) , \cot (z) * \tanh (z) * {\rm {csch}} (z) , {\rm {sech}} (z) , {\rm {coth}} (z) * z! * z!! * \Gamma (z) * \psi^{(0)} (z) * \zeta (z) Branch cuts/points These guys are also much better explained with the visualizations. Some functions cannot be defined as single-valued functions that are holomorphic everywhere on {\mathbb {C}} , such as the square root function or natural logarithm function. These are called multivalued functions (which is an oxymoron). If we try and restrict the range of these functions (usually in order to define a principal value of the function) to create, we'll end up with a function continuous everywhere except for points on some curves. These curves are called branch cuts and any endpoints of these curves are called branch points. If the branch cut is a ray, then one of the branch points is \infty . Now if we restrict the range of the function to make it single-valued as well as domain of the function to D \backslash B where D is the original domain of the function and B is the set of all branch cuts of the function, we find that the multivalued function is holomorphic on D \backslash B . Examples of multivalued functions: * \sqrt {z} , [root| \sqrt[3 {z} ]], any z^w such that w is not an integer * \log (z) , any \log_w (z) such that (w \neq 0) \land (w \neq 1) * \arcsin (z) , \arccos (z) , \arctan (z) * {\rm {arccsc}} (z) , {\rm {arcsec}} (z) , {\rm {arccot}} (z) * {\rm {arcsinh}} (z) , {\rm {arccosh}} (z) , {\rm {arctanh}} (z) * {\rm {arccsch}} (z) , {\rm {arcsech}} (z) , {\rm {arccoth}} (z) * W (z) * {\rm {tet}} (z) , {\rm {slog}} (z) , {\rm {pen}} (z) * \log \Gamma (z) * {\rm {Li}}_2 (z) Singularities, poles and zeros A zero or root of a complex function f is a complex number z_0 such that f(z_0) = 0 . Simple enough. A singularity of a complex function f is just a fancy way of saying a "special snowflake point". Generally, a point z_0 in {\mathbb {C}} such that f(z_0) is undefined or f(z_0) fails to be differentiable or is a branch point is called a singularity. One special kind of singularity is the pole. A pole z_0 of function f is a complex number such that defining \frac{1}{f(z_0)} =0 will make \frac{1}{f(z)} holomorphic on an open subset U of {\mathbb {C}} such that z_0 \in U . Any point where a meromorphic function is undefined in {\mathbb {C}} is a pole. Poles and zeros can be characterized by their order, which is another thing that visualizations can do very well at showing (the best for this contour plots, though complex maps can work). Let g(z) = (z-z_0)^n f(z) and h(z) = (z-z_0)^{-n} f(z) where n is some complex number. A complex number z_0 is a pole of order n ' of a meromorphic function f if there exists a nonzero complex number w such that defining g(z_0) = w will make g an analytic function in the neighbourhood of z_0 or a '''zero of order n ' of a meromorphic function f if there exists a nonzero complex number w such that defining h(z_0) = w will make h an analytic function in the neighbourhood of z_0 . A pole of order 1 is called a '''simple pole and a zero of order 1 is called a simple zero. From the definitions of the order of a pole or zero, we could consider a pole of order n to be a zero of order -n (and vice versa) and a point z_0 such that f(z_0) = z_1 where z_1 is a nonzero complex number to be a pole/zero of order 0. When n is not an integer, a pole of order n is a branch point. Examples of poles: * 0 is a simple pole of z^{-1} * 0 is a pole of order n of z^{-n} *For all integers n , n\pi + \frac{\pi}{2} is a simple pole of \tan (z) *Any integers less than 0 are simple poles of z! *Any even integers less than 0 are simple poles of z!! *Any integers less than 1 are simple poles of \Gamma (z) *Any integers less than 1 are simple poles of \psi^{(0)} (z) * 1 is a simple pole of \zeta (z) Another important kind of singularity is the essential singularity. Essential singularities z_0 of a function f are points such that defining f(z_0) to be some arbitrary number would not make f(z) or f(z^{-1}) holomorphic in the neighbourhood of z_0 . Examples of essential singularities * 0 is an essential singularity of \exp (z^{-1}) * 0 is an essential singularity of \sin (z^{-1}) * 0 is an essential singularity of \cos (z^{-1}) * 0 is an essential singularity of \Gamma (z^{-1}) Growth and/or periodicity 2D plotting function while keeping a component a constant Complex (Conformal) maps 3D plots re(z).PNG|3D plot of \Re (z) im(z).PNG|3D plot of \Im (z) abs(z).PNG|3D plot of |z| arg(z).PNG|3D plot of {\rm {arg}} (z) re(z^2).PNG|3D plot of \Re (z^2) im(z^2).PNG|3D plot of \Im (z^2) abs(z^2).PNG|3D plot of |z^2| arg(z^2).PNG|3D plot of {\rm {arg}} (z^2) Re(gamma(z)).PNG|3D plot of \Re (\Gamma (z)) Im(gamma(z)).PNG|3D plot of \Im (\Gamma (z)) Abs(gamma(z)).PNG|3D plot of |\Gamma (z)| Arg(gamma(z)).PNG|3D plot of {\rm {arg}} (\Gamma (z)) Re(zeta(z)).PNG|3D plot of \Re (\zeta (z)) Im(zeta(z)).PNG|3D plot of \Im (\zeta (z)) Abs(zeta(z)).PNG|3D plot of |\zeta (z)| Arg(zeta(z)).PNG|3D plot of {\rm {arg}} (\zeta (z)) Contour maps/plots complex z.png|Contour plot of z complex z^2.png|Contour plot of z^2 complex Γ(z).png|Contour plot of \Gamma (z) complex ζ(z).png|Contour plot of \zeta (z) Tetraviews Riemann surfaces Domain colouring complex z dc.png|Domain colouring of z complex z^2 dc.png|Domain colouring of z^2 complex_Γ(z)_dc.png|Domain colouring of \Gamma (z) complex ζ(z) dc.png|Domain colouring of \zeta (z) Domain colouring is a visualization method where you consider the domain of a function and then colour it. Who would have thought? It's kind of like contour maps but instead of drawing lines through outputs that satisfy a certain property, we colour points that satisfy a certain property. And that property is equalling a certain number. (As it turns out, contour plots are a special case of domain colouring.) So every complex number gets its very own designated colour. Usually, assigning colours is done as so: the hue of the colour depends on the argument of the number and the lightness of the colour depends on the absolute value of the number. Zero is assigned black, smaller numbers get darker colours, and larger numbers get lighter colours. Time to colour some domains! Let's consider the function z^2 . So start off with a blank canvas for us to colour and then colour every point. So, let's consider the number 2. What's 2 squared? 4? So colour the point for 2 whatever colour we assigned for 4. Let's consider -3. What's -3 squared? 9? So colour the point for -3 whatever colour we assigned for 9. If plugging a number into the function results in something that blows up to infinity or in general, is undefined, then assign white. Do this a couple more times until we have a nice and colourful piece of art. The fun part about domain colouring is that like contour plots, poles, zeros, and branch cuts can be easily identified. Integer-ordered zeros and poles of functions—which are black and white points, respectively—are always endpoints of "curves" of colours of a certain hue, and the order of an integer-order zero or pole can be identified by looking at how many curves of any given hue end at the pole or zero. z^2 has a zero of order two at 0 because you can see two yellow rays ending at the point, you can see two cyan rays, you can see two magenta rays, and so on. \Gamma (z) has a simple pole at -2 since you can see one yellow ray ending at the point, one cyan ray, one magenta ray, and so on. Branch cuts of a function are curves where the function appears discontinuous—where colours seem to suddenly "jump" to another colour. The endpoints of a branch cut are the branch points. One problem with domain colouring is that people that are colourblind may have a harder time interpreting such graphs. Colouring the Riemann sphere Slidey thingies (sliders) Extending these to hypercomplex numbers in general Category:Blog posts